#!/bin/bash
############################################################
# 日期：2020-12-3
# 作者：0719.tech
# 说明：启动springboot并检查它的状态
############################################################
version="0.1"
echo "$0 version: $version"

app_home="{app_home}"
jar_file="{jar_file}"
start_sh="{script_dir}/start4springboot.sh"
java_opt="-Xms256M -Xmx512M"
app_params=" --kindle.home=/workspace/app/mynovel/novel_home --novel.home=/workspace/app/mynovel/novel_store"

#使用说明，用来提示输入参数
usage() {
    echo "Usage: sh start.sh [start|stop|restart|status]"
    exit 1
}

#检查程序是否在运行
check_app_alive(){
  pid=`ps -ef|grep java|grep $jar_file|grep -v grep|grep -v $0|awk '{print $2}'`
  #pid为空，app未在运行
  if [ -z "${pid}" ]; then
    return 1
  else
    return 0
  fi
}

#启动方法
start(){
    #启动程序&&检测状态
    sh $start_sh start "$jar_file" "$java_opt" "$app_params"
}

#停止方法
stop(){
    #停止程序&&检测状态
    sh $start_sh stop "$jar_file"
}

#运行状态
status(){
    sh $start_sh status "$jar_file"
}

#重启
restart(){
    stop
    start
}
#根据输入参数，选择执行对应方法，不输入则执行使用说明
case "$1" in
  "start")
    start
    ;;
  "stop")
    stop
    ;;
  "status")
    status
    ;;
  "restart")
    restart
    ;;
  *)
    usage
    ;;
esac
